package cn.yeziji.forum.entity;

import cn.org.atool.fluent.mybatis.annotation.FluentMybatis;
import cn.org.atool.fluent.mybatis.annotation.TableField;
import cn.org.atool.fluent.mybatis.annotation.TableId;
import cn.org.atool.fluent.mybatis.base.RichEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.math.BigDecimal;
import java.util.Date;

/**
 * ForumUserEntity: 数据映射实体定义
 *
 * @author Powered By Fluent Mybatis
 */
@SuppressWarnings({"rawtypes", "unchecked"})
@Data
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@FluentMybatis(table = "forum_user", schema = "yzj_forum")
public class ForumUserEntity extends RichEntity {
  private static final long serialVersionUID = 1L;

  /** */
  @TableId("id")
  private Integer id;

  /** 头像 */
  @TableField("avatar")
  private String avatar;

  /** 电子邮箱 */
  @TableField("email")
  private String email;

  /**
   * 经验
   */
  @TableField("experience")
  private BigDecimal experience;

  /** 创建时间 */
  @TableField("createTime")
  private Date createTime;

  /** 是否不可用 */
  @TableField("delete")
  private Boolean delete;

  /** 个人简介 */
  @TableField("desc")
  private String desc;

  /** 等级 */
  @TableField("level")
  private String level;

  /** 昵称 */
  @TableField("nickname")
  private String nickname;

  /** security encode */
  @TableField("password")
  private String password;

  /** */
  @TableField("updateTime")
  private Date updateTime;

  /** 用户名 */
  @TableField("username")
  private String username;

  /** 关注 id 列表 */
  @TableField("focusIds")
  private String focusIds;

  /** 粉丝 id 列表 */
  @TableField("fansIds")
  private String fansIds;

  @Override
  public final Class entityClass() {
    return ForumUserEntity.class;
  }
}
